<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <meta name="theme-color" content="#3367D6"/>
  <link rel="apple-touch-icon" href="/icons-192.png">
  <link rel="manifest" href="/manifest.json">
  
  <meta name="generator" content="Hexo 6.3.0">

  

  

  
    <meta name="author" content="QAQ">
  

  

  

  <title>hexo基本使用 | QAQ</title>

  

  
    <link rel="shortcut icon" href="/blog/favicon.ico">
  

  <!--mathjax latex数学公式显示支持-->
  
  

  
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/typeface-source-code-pro@1.1.13/index.min.css">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.7.0/build/styles/monokai.min.css">
  

  

  
<link rel="stylesheet" href="/blog/css/style.css">

</head>
<body>
  <div class="root-container">
    
<!-- header container -->
<header class="header-container post">
  
    <div class="post-image" style="background-image: url(https://qiniu.sukoshi.xyz/src/images/68686407_p0.jpg)"></div>
  

  <!-- navbar -->
<nav class="navbar">
  <div class="navbar-content">
    <!-- logo -->
    <div class="navbar-logo">
      <a href="/blog/">
        
          QAQ
        
      </a>
    </div>
    <!-- link -->
    <div class="navbar-link">
      <div class="navbar-btn">
        <div></div>
        <div></div>
        <div></div>
      </div>
      <ul class="navbar-list">
        
      </ul>
    </div>
  </div>
</nav>

  
  

  
  

  
  

  
  

  
  
    <div class="header-content">
      <div class="post-text layout-block">
        <div class="layout-margin">
          <h1 class="title-wrap">hexo基本使用</h1>
          <h2 class="title-sub-wrap">
            <strong>QAQ</strong>
            <span>发布于</span>
            <time  class="article-date" datetime="2023-03-26T07:53:41.000Z" itemprop="datePublished">2023-03-26</time>
          </h2>
          
            <h2 class="last-time">
              <span>最后更新于</span>
              <time  class="article-updated" datetime="2024-04-09T01:34:40.830Z" itemprop="dateUpdated">2024-04-09</time>
            </h2>
          
          
          <ul class="wrap-list dark">
  
</ul>
          <ul class="wrap-list dark">
  
</ul>
        </div>
      </div>
    </div>
  

  
  
  
</header>

    <!-- 文章 -->

<!-- 文章内容 -->
<div class="body-container">
  <article class="content-container layout-block post-container">
    <div class="article-info">
      
      
      
      
      <section class="article-entry markdown-body layout-margin content-padding--large soft-size--large soft-style--box">
        <div class="hbe hbe-container" id="hexo-blog-encrypt" data-wpm="抱歉，这个密码看着不太对，请再试试。" data-whm="抱歉，这个文章不能被纠正，不过您还是能看看解密后的内容。">
  <script id="hbeData" type="hbeData" data-hmacdigest="d177bbd09e184de481d1c333280005bb1da4962b5a2a64e7be028f0e1afbb472">f5d7027a76d40f8b4fe5a79716a716fb2e3f49ee84cb217f92cc109ad4d8682f223de2c0d5305185eb5b10511db7529d502d801eb184848c48c67f60aaf9a42dd45da067f66ac318cb5f01df19363c6053331ea40d4f3c9f1f4554bc784a02430c83cf49384c373023eba9382c38967d0b255533e8726d8cb4872d6a7988c014e8dbd879d412a8976336909cd978509c7c1355dbce2e1aa0fa5817e7e684bf029d87d3342f34caa7e96eaeb6ba9bbc37adf657b60666286c126f0b7004100da3a99684a88a010cb2a59a849e2b9422f53427de8028c394ca5fe8bc5dc58c05583dda3a66a8a383308526f239a9bc8d80d47cc38a38d31a9b4bc2a91c0a1bc33ecbb029f2f4e0989c22461dae0c1c0bf4267906c73e1f550a0c6c669a055abef8dd6e207251e4f9a93069841710a415ea43700774f1e0055042bf5e53462ceb013a05048030b81e051c11e452c11c8abc5873bd15926698add60538a7b6496da256e18ba1af756f450be9ff4fc421df1f30b71a2ea234b62686024d089315a64ec1f43ee3f9b2bb505b215fab66194a229abc52c8249f707390f1093ca1d50a7f5fbc76cd8fbf6e0b453ebd9492f5924366a86bc79884a031c0ed8495fdd1f2bf5d6dc1e97129724aea095c32d3cf7a46b2f8e3486291776048db75b202682ec37ec229a63a13f578fc80dbb851af1ef17b4b097ae5cfe2c0d8b0fdac651dbbbc77ee04167fc3390805579f473b7b683b2f3da580924291603c2f2d49aea3c59cdd17eb44f44bc078eddf1b3cfd37eb2fb5c2c36ec0345f4f87c8109096d8889154c147e6c89f58e6067e9ea730cd93ddc22ffd0c19f86280ff621e1d483dabe1522b4a8cd77208c04f1e7b40453a569d17df799908956768031c9a4d96067d1e86666d298bec9f719210b96a847c6636101962f32c19332c3a2f4aad52d9f3df7e44c90a34850b022006f4a9800fd3fe7d9824f6f0abf46f59710ddac3f684204b88fcffd7f2d2f0b1061c03916121188ee2d1a9896f0986e1b1fe116e933e583cee5e9803d3fafb5d6774d3553a027f7be4eec4d7be5ed0948e5b6d3edec983b7ce0ce3c87318970cdcba44504fc88d4bbe92fc5fdb11af3080accc412e771d67d5d1bc29116ef379934d54343eb06ba3934b05b32d649b67a8791f5f405a45d92e2f479146c640592ffcdbe7bcc26b9fb6041274147f7a6c3123cbe69dd03551bafdee4ee9645557f9a2a1b4bae144dfa97330c60b8698225d73e319d8bc199778200c74dfd0fdd52fdbc48692a6248ad58572802eae8e1bbdd2708e9ba3a8bc0853f9c79584edbf741685762faf695581f0e4b2257a54bd2abf43540516aa972f846b75ce07fe177f3dad9b8aa58f6c808aedc5160d90918ffb0ec129dc6ca9ef327349e66072470e910e2d5a4496856cc72c784538dd118792d37e5690cc0fd813aa4c3c06f3dc72fdbd042b8984c73d55239d38ad3c84b5f6f85027370cb711c7adf796e6e9c01e5a823b6015e07aefd9d5e9314b251a64ebd03c5be9d708bd41a793ce9b2cdfc1f18bb57e3e20f82eb5468061a203feeec9733ea15b6829a180654b33fd9365819c33222df1cd3a8e060ff935d6838d9d8b1bb1a409c7eabcc6c3c927943872bdffe3589e88d33731983af7c4cfecc3e04c442688132c5370d8fe12b3e6335a17d78d5abf36438e31c4b5ecb7c552284322d85e76d8a3ddf2d12f3178488e8c5b8adb2b78694c72fb6ba82738d752891c092fc61eaf685980d68008581fb1401857ab50a2a9d01974af8af821ac5d78e7895f6e4fbbdf342fc3e52388f7ee3282a805137987a7b18ccf983244457736dc7f73133b8074b5b9ecf394e922a01048d425aac428cb7aa96027271c2dfbfa811b77ea7f6715ee03ceb1acc9983cc6a14ed5d4ab99576415a5bafcf6e4647685271bb2fd270d4820d25a3889a3b83f4a99e7ee23cdeff05d96c569d87a448c8bed2332ead63ec472d4279a4a81bb42ba4a845bdbfabbb0c815c674189b390a60af41541db74a7a2e487d4346aa877ae5515079780248bd500645df2cb8fe7ee4aa10bd44ac46ab8eda93a6703db6ee3778572be55874214bc7b1be43cbffdaf1d34956f288ce52fa238cb98c79b5cd718a332ea47cc090f211d123c0f5a6e01afcb21dd6b4a89095e493e2123cb7050aad9f43705e16d9d7b9ece73e84c568095dc620ae0e95adb2fab695f5f65e25c9535becd41877df879df56e5eb35f84168588799dc99ca4469356875b5f627865109fbd1b313febad833d13d9df8eaaeb13ef2fa300a0829b9035b9d63966d1ccf3f43ab18a0feb83d4267e5279bfc9382d3fbcdb2b4b7bf3c9c72e490c30a33a434133f76cb235d9f5fd5a59ea28670a4610016bb21db651ed9e6301b068890a945cc1ab75d06d34e71a689c80ad79fe68665261922dd3c70fb806d46cd75472e5d9fc91b15cb3ff2166ea9b805feeaac1adbcdc449488be0b91a26cf80c059799e97361aac79de2a74870b87051f7418ad6adf62f735420acc9ae9f4543c82388870ca7b40324dc9e0bd28dd9b2adbf1802196c3e17ab9294f79ff7a45eab01a47167e0c31eacd3d4311a92371912a2cdcda161827f2fa0418365d233e8efbcbfec2d096fea215149c8a638fc1d9493a5cf7cac1de02af89f73788c8ab93922d51cabc0a0c0ece3b270f5f22d1116f7939c1f0081193ecbecd487023c38a598c37aae76f42adb7ebb220c4d63618bad74930cf636ecbca4c7e55e030b370502522a2f2a80deddc3aea4f0aaa9dd3150242f17257c773a496b5527dac06a54063f274ab2de7c06a372f4b953ab2dcc86b4010b3dd75dd3810844353dfead13c25990ed5438fead7b0bf581070a272f385143a678c36dd4ecd6d87d8921c5af58cbcc317879837cf13321afe81c8fb4126ee593d0b83adbae555fb5fb7f74ebd8f09e39a37126f73f22975184e57bc3ee0dc1bb0b0c09e4f66e40e138cbc23bc625a3cb69c9a688a0f1d4ec09e1163de07946130fd117f0b64de8b91fcdc542e461b8e9d6158b4b5dfb5552d7e86a93e4f3ca2166fe23431d0360dc256c26e5e43d0a116382cf7a764fde18d6e5eaf7dd15d47dfdd05bdf2e5d6a63aca9579b2fdc3a481650a968a199ca7978d58ae8192961cdca2651d4d4218fdf1ed1d8088dee82b3b788ecbf3febf9263a8dbe4b541846341078c167e78237d662aec6d1981906866a4e71515ec9a6715b6f0bd11005825343619ac908f3e7eeb5e757dd36d9e309a77d07d3a99568d2b77a4b011d48167118fc441c678dbc0868180bb7a0c3bda5037ae4276654bd5c4480748ef834bad2478547ad0e1b906a5b4b0504c7b7cc61b8dffbf56cf2f951cde893f38f7038247a61cccbb9db58633e5ffd83bc7f370facca74de76775034a8c7ea50c9c2bf79bd03b36154e4df3b1eb4a8bbc7f371d07b5819266aef4b53777128f94d892f889e2f67b756a3c61bdeee4f3f43dfe21664a4c5a78cd926b2b8c0cec88a01f4f9289a40cfe90ca8bf4173de15261a3a05b638911901b50e18a10a89ceb3da3ba106473cb0b04c2ce641506c8e06dbaa2794dab77f31326300369225a7f2e4fc476aa6bb0036dd49c8ed316d6abc82556daaf8f2ea3844e66bee912149c88665b315af309b69d28cb80f42410008eb494600a5b87d3feebe2d624968dae4b93df4f070908bd1f999cc42a4ba35162a3c0727a3bef9b0af1981f74e07bb400e86ff13bf003701ebc419e621fec5978e0f257b831fa05c951a1f9e3ee868d57b0648d346a86388632207f36d1a7b4e8cbf8d2622596b60316bc0f6a88bd8186ed4b211f5895dbf83b7591cbe1a016f5e976a1862bbe3b664b6ac6df5ec2edbf4553aad5b0da88e3cd19c872c576938047ae147e81f98db06586af2e8d48fe2ed9746b52c4e5a9745e67841ef4af807f71452286e2a0cdfba87864e44a77e393f9ce1cd316842d3c6019bdcbe0a096e57136e84ffd592accf25f570c698b4066498483a9009bf9e032c4735d45e413b0bafbca46a8672e7106dc82e699b00aa2199f2144382181d09cb017e4191643a9be6434eca3a81eab3ec8b863631e70e4dbc4b8be0dfbea7c93d5ef0ee81483938ab61edd214e2a42a35b8a11c4b665f8913249ef666783d8c44688b305ac653990156d9f64eae36c58c2d2f3b5963bfc8ad639a8f1528e0a2fb05e7d4b9cf584487f684c8400953790b4a79af5106486876278f826904c845ed115add5d61cf4e9c579c17a351140e5666348eb53c7a925e2e7f798cb36c6cc68eab0dd6fc385b5602cef7ee64f5aacbd61ccab695b9a278fcf706cf4f5608ea744c483d0f96c6ed77e3ca2f50a02d3e995a7d8032dc94720a623dc565204b205892b93fd9e20b35a223b969d317227d2dcc29510ef4beede00556e07eb479129edc99bd495f534e44fd1e5941e7f3a8a57d027b63c239cb893a93a4e6bbd4c5c001294493a131a5c4c1e9b591229de4e21c6c396770b1c40e7ca7db92b765d862793259a790ef4afaa0841d4fec18aae22da7e952405fea2c1c8ed8a124b119d3db6fad2c9dfd3faaf16630eff7b8016f5ac272238735e2449684c8533ac760ccb8721ebe5451aadd959a270f4bf6d54815d9fbea7de44556add50a1787d97a9a10c825d79308a2891e522e53c68dd52845b5e57236dda29db07bbb07befe4bd604dd626fd8beaf2b1d75fc5d14842b7ac37aae4cb62f377bedf1d0c6eb2a021803e8e1b4d93095277db878c9ac9dc6b6b14f6b6b3dbfd2ac9d20eb73ab29854f98813e63f4ea2b0428f277c6b9e472d24706896de5211b3d69cdc50749f3a6898eeb9f12e582a5e34c7c7ca68467a585d023ef95ef3eb2aeb2cd5fdfcb4d3526a0a8ba894ecfcbcc3ddb6f296a62b1318b6d4290c0bba060675b263b7c70e986da65268d7b5a19e60da760ac9c6f59a0caeb82d4348ba7a72b05c4aeb5753d053aafbdbd037dee80ff4a6fe5474ff1bfaa6e4ae5f67d20e99082142631156f8f106b27700eac48b818122d82bea2fff00282977a3a7c4397ab6fed61c617e02118e90c136c7bb980b05b84c92a1c9e3507fc68fc3da86867d86d0c5d61c506df7552b03488a8b443ca131f789b5640ec96c073f230508daf96fdc6cd3917bac30b73aa171554af795d26513bebde9601e0d5f044761727581a164d3b9637b788bbc7778cc678a32e313c7e394296779918593e36af1b426d827b8ebb2c74089a9e083c231ffb27926a4abf3cbe6e4efe12ccdc53d6a27c418f8f00c1b21f32e6bed95df7441047f09839b12be88a0844c4993661740e62ac01bfe06dcea38631be13f4503bbf20011b7e07576fd889c4df886adce87612b0bf2d990c333975dba81cbae491074828cdf74d908f1b4a5130246d262f68c800d5319ca967a089e349d21a12144cfc8c825dd849908f5d40d7b9b8d83f06a5ccd089a8baddd69fa952bff4706b24de2a0c6849120395f509befa39b2f39969781d24b84083ef5f4bccec3944686d7f81592b2a7cecb8115b5370b760c5ed2530b08d8c24aab9483e35a15755788b6c205fe258b39a8ee2bbefad1c4f5e69e07171427f967e1d919317abc236d99107b8512d0b1bd31c0239e5463377cc402123c4c016d859d98a741b12578d5dec917b5505357d3bd08f843b69556f90377b5237c9ef2b216d4cdbacbf35be0c0ac4073ff6c36f5786de668e9b0d402c310cc3a07612ab56a7df53dcb33bebdb98830027a44058025ee3d5a768e37d3269fd00e4d90ec7373d07db846f0df02be910b14faa48ca43c031b7d7fd42b196fec2b5f919c081ee76f1f8e283b8ff7a5ce26ce6f48b21e9731c375186c2528dba461135bf52799f605a13f36e6c540caae30961c3ff4a46f730c884ae5511cf96800143d85a99c9d9224af8bb0c2f0f29d38d31cf67c6acdcffebfb4bdab735bac7a295e7c3985f4abc6299b732d306332feeb4130ece2df222bdbf6df9494316e62d0ec908a9fd573d96f7f1c1d62de06424d0c537b10aeec31812fad90ed6322de41d51117bff45e3fcaba987303e6173d9c7f72de3544108004a1d0c78e03943c03ef34451a13c0d5a5c9a7d43c3609808a97a275002475a7c8d98e69f3959513ec8ba0ec3e623fb525c5c8997f68cba3ee1b5beb2d45693b67347161b9f1f25dfbc0cfbf27c7e28d7ea71b6fd8af6aa424d0e0ee5dbde16ad6285f45515744ec28517e0ca9d75aa4bbdb45b684692eb7dba92f2355c6bb3b357c38ce3652690829e196bcce4977ef642fc218f6ed8ff5713d4f3d2bdad222d4b08967a72d2fd7d3b4b094d19786d577b12eea85a6c15f029fba26f61ddaaf986292cc8df7d519a7ca88cc5ee3ca5c944a6d821e8723a52dd772db9aee7b11d831b4fa4369a490bb1527744100112a6ac435cbea68951fd9288ee6d9fa8c8339cd4beaa7082d3e0b73fbf65ff5ae560ce3fc17c7ecf0bf57db01cb5dedc7e90610cc321da10a7c5e3f055223e1b96e55fb58d37639dffe301cca46c335d9369de16e7128c46808e5168f7323ebd7878fe5824a6c0443bb1828c7346e5e1a6a782265e0a6f542678c8d6c3c07c5c624bb91ad104ec03d6007ff7c7f41a7c06471646309e92c4cb9a40b6a0314a1747e3855693e311f03423c8d8a5c9cebbc25f5a3c6d48738a7afd8692d15e66fb041fb80b402d046b4ec2bbf800516192627919d9f9e7ea15a527687317b163e3bf9bdae28268d2ef979eba69974b012684ddb6845ad6461c389bca310e2bcbaba4f92f9ed87222d6ceafcd48c9388e60b80787686dee266f1db99be1edbf1dd286ab2dbb4e17d9a4452d79fef7c2c9e0148a42499f6a7e36d1760b1c69d885f364973e35313f826a56a80b77aa75254ee88336ca7c5cc0d85f5d4336b77b42533e374da822791df914189d53e6096fd857ef78d698db42a9add01665aec5dc64b04d0b498f4c371426ca2f25f63703e758fc5c9068a4697d71fa49704b760af0ee27773ad4977b1fd0963a4e72b2d227bf29cd80018a8c353c773de18995558071f6746a2b861fab4603796b3525cb805f26eb16e2074f31558b9ea2ac90be23f1de90888d9c7aaf8bbfd3377f24a0a14dad1d3d53640652a4a6ee0e9eff9b16e83980b434bdb31364a1ef491694bf9fc2b3b3cedadd3f3b596b2d72ba62671b5320f9bf34b84f0ba2be5652769001cffb141fc5e98dd10fa233c44cf2c0800b53f51f839038158814573b3632426ac59884406fdb6687e281f259be8821305cee8b49b24ed0915ab00a96cb650267817fe87a21c168413c18331d86fa52498c1c6e3dd7a2ff78170fb61869288af1f2b47bf13610f3c8fba48d0ef966b86788d17b5932fa4ce5dddd63b854e2c8c8c3164a100488401da4c94fd97096141b063a50e06457e682dbfc70ff1e5686a653635c25ad750bd08a88dfc27eb66c1b0dc538f2a3e84d023e89c260715188414902dcfb0a73b68a222f7ada620500fcaee0b1ee6ffea8f3969e3ea16a6ab269cf448168f9ba55b8d8134d0f52ef0659567be368baaede5d6cdf24cd6dabc7acac207ab0140c64a1cc28168684544a0dd0fe98a1e7b261c3379d19a67825cc6b7d36d5243250a50567367b858c213b26e4ea564c1976bb2d075d35364d7d056215cc125cd32721982f3756d5ff129481cbd018ff18a6b3fdf9a4495bb443fd606af555cb2981b3732aebd39186d5071c61664db4647ee9de7305d719939de1df7aa109f92593fefc56b3d90687fcea5866b9b68089c9d6c2117b1257abe42b525cff8b91802a9e6280aab8a28ec9dcf44aaf11960fcd0694ec7f9ae3eb273aa3d06ba51922cd33bf9210342dad34329284f5e4c2bdccbbc83b8baa65c2a59954faa52cbd7145bd835e9f9f231c1da7dbe300a4f0aaeaf5e9b1fb8e67d96a6865d9e856cd53c3cac24ff27401499a5b8e389a6bf8b7dd0c6e4e533e21bc3f15c2ef6d6d37162009be0b70317916a1d6697c2bb89ee7dd8f98fdc65dc1b09c734616a2449477d6da8bed7e3c7b9b2b7e58a743158abf4bf5f737bef0216d5a08bd3225a50d63bdfafdd8905bc86f497ce14b5be3632d51b038bd16198bba2e1b51da2a22f6bc46ce6c719c1ef4bc98c85d00d6606f4845905fc337ac9809cc7fa8284ae5543d84bddcf1eceef0e0189e41bd3b613d140a76e7d4c509bb81d7f9fa9de971e82ea01560576c56eafc4ba5d97718ef50ad4b244f322dc8fb1865e5f55a62723f80aab6ddf0b8455c3fb03fdabe4d396d7c836b0e9f9b5efdbdfb9cf60ccdbcf179fea344b943c33753863968c5f0b5e5675e1722d6049aeb96bb956a5a0386a181d9aa739c3e38cc93650bcb931c5591459ee39b06eb4b17b4882d7950c4d3ef0435dd5c5a6cc4bbc173a17d1be1f21bbf52ee73666510b0a7fa917db0db5fd43ca69e4ca2746db7beaccde6ff10a7dba9bff69ce11ae1c5c31c89b46dc351a6e12652e814751991d5b9ab14b33c32b791f9b1ee25c04bc22cb8870a83ca80404b210488df9d1e8c605e33354bf8982468203d04a7cf49cdf1f1b3f85540bb9d92005aa17ae28b70cd58f627f860065508712756cf9739a4b741700ce619ec5238eaad81bbbd0808d0c2ccce87f9ebac784c54fdf30bf38c8b849731dbb674bca67b9e2c9143456ea2fa4c65778772e4f9bcffc6ddb3d4f6259fbeea2b852e3d32789a01113e4518e4f1cb5d8afdfe1022f5154c66ea57e8b3180554d0f5629f8f2a8243be026d6c1be577b2ef1bb77c433558ca5d1d00323bb1e911621223f0f9002fa679b8930327b98c36431368fe52d81a53fa1be35e1e1c70e352fa8e6d781dc78ad87db092902c84fa8f5f359dd4b4afff181f88b57727345c149209234ccc370c1d2d77e65bc3b58e86223a9eb7ff2bfc5963536411705e2fcad27d9a864cbd92f9d7537235a87afb3f6b1b5defcc57daa71ea1f56e84af212a8ae63fc842365183548879110fe2d8c2de03dd031a719e2bf6e51f36891b01861d2c8384bb72b52a9622b08291baf28b73f9dc436a3f1acc9c222f9fbf3bb0edf8ce65e16ec07fdf09ce67650aa5fb529779975330e389f18a63d338363f78d44f44cedbe3190a601e064dfe61dbcfc690775388ad4eca2db2a2ea0e5fe8aaa9beedacc739113ecc9c3dc0a825cae1a4620af58f42c744eed07b6639d701a7e49a9651be5d3e5b9fd1fb8d1646879cb55c80be3a935bee0fc0218c8f54501412486142a291bcb9d9d0d2f97d49cb3d979fa956a481506e06ef5ce88148f2f463fde11dd378bc387db83ba5847eae05bcd67796873e0e05aa3b717cbaebecbc8c654e76f631f604f8b4cfc6ce7743910d2172d1f1792d16ba729770778bf3e9fd7da27c69cb7ad023bfde46f67dea31e75d06db6a01f6143f584ec6f28b29f3b36d4254bafa4774d4da3eafabc596ad07591c0615c7b3895674f2407b2791821329e29a5487563b0c48bb1800270791ee4f8d2cc9233fb51e3fdf849a39674ee854a9316fd7d47df077afc1e9777f0697e8495f95bec7389bd91c5eb4e0978c8f401ca32db30ead04211c81881ba5206e978bdf505f7aa56837c5e3aea0a07786d4d58c6c3027dd58ba746dee697e9be960bac51c0f80309ea5dc506a13532e74706374cfe39aea07782bbe31c4f7afede6c56af2b34a1f3b9eb359093f2d75b9c011c400e01c4b3bc4b0ff8bbd8d0f5daf04617231212064cfe63a5ac2d13d2a4dac5e8d59e74669283b1ef3331aebae77db99369ec090bb00446852b7154f34cdc7cce78b5498f4e5785d269f55aa98d9c5c57284ad44f2662c70c97de096670ac4a9c8a0c59f0a3cf363bb30fe979d461169e9123bdde92850fa4f9e9e988d6262c25e894161d9bfa14ad7d4125ddc3aa76629a7cb353eb3b294c4e6be6fd625c61429c8ee32813372df647a06e362cc1a8c4981b395551833aceea816134fc6cbe6fc053f760d9b4a975ae218daefc74e74ece44dc65882a857fb1e04db445e1a387f2551631ad5ad7dad6d0fe80d849a6800953c6939e3acc6d6c60f229ca39d44a1f6da54cc78778953749ce08a85ab4106c5faf90e93086d0eeb3f7d063296bc8f512154f77b87ecd816fcfbbd36b0d43c0127f44ffb55a5fd1fdf80a6b80e0acaf5d4353f258e620bc290b003f961b79876cff75579139169bce63d9ceadbf76ce53279c249b99bde17af51143cfb412189e50bb0f25ee258a86dabbf5d85ad81a00dfa27dfca60831691f306b60b6a903615e3bbcd9d8eb3ed6f64854eca9aad9c268d86bc73b2efc2</script>
  <div class="hbe hbe-content">
    <div class="hbe hbe-input hbe-input-default">
      <input class="hbe hbe-input-field hbe-input-field-default" type="password" id="hbePass">
      <label class="hbe hbe-input-label hbe-input-label-default" for="hbePass">
        <span class="hbe hbe-input-label-content hbe-input-label-content-default">您好，这里需要密码。</span>
      </label>
    </div>
  </div>
</div>
<script data-pjax src="/blog/lib/hbe.js"></script><link href="/blog/css/hbe.style.css" rel="stylesheet" type="text/css">
      </section>

      
      
        <nav class="article-nav">
          
            <div class="article-nav-item layout-padding">
  <article class="card-container article-nav-card content-padding--primary soft-size--large soft-style--box">
    
    <div class="card-text">
      
        <a href="/blog/2023/03/30/PG%E8%AE%B0%E5%BD%95/" itemprop="url">
          <h2 class="card-text--title text-ellipsis">PG记录</h2>
        </a>
      
      <div class="card-text--row">Newer</div>
    </div>
  </article>
</div>
          
          
        </nav>
      

      <section class="page-message-container layout-padding">
        


  
  

  
  


      </section>
    </div>
    <div class="widget-info">
      <section class="widget-author widget-item layout-margin content-padding--primary soft-size--large soft-style--box">
  <div class="widget-body">
    
      <img src="/blog/icon.gif" class="soft-size--round soft-style--box" alt="QAQ">
    
    
      <h2>QAQ</h2>
    
    
      <p>贵在坚持</p>
    

    <div class="count-box">
      <div class="count-box--item">
        <svg class="icon icon-article" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M240.51564747 647.74217627h196.07203239c16.59071043 0 30.16492806-13.57421762 30.16492805-30.16492806V165.10332731c0-33.18142087-30.16492806-60.32985613-60.32985612-60.32985611H245.04038668C225.43318342 104.7734712 210.35071939 119.85593522 210.35071939 139.46313845V617.57724821c0 16.59071043 13.57421762 30.16492806 30.16492808 30.16492806z m663.62841731-452.47392089v482.63884894c0 33.18142087-27.14843525 60.32985613-60.32985612 60.32985613H180.18579134c-33.18142087 0-60.32985613-27.14843525-60.32985612-60.32985613V195.26825538c-49.77213131 0-90.49478418 40.72265287-90.49478417 90.49478417v452.4739209c0 49.77213131 40.72265287 90.49478418 90.49478417 90.49478417h286.56681657c16.59071043 0 30.16492806 13.57421762 30.16492807 30.16492807s13.57421762 30.16492806 30.16492805 30.16492806h90.49478418c16.59071043 0 30.16492806-13.57421762 30.16492805-30.16492806s13.57421762-30.16492806 30.16492807-30.16492807h286.56681657c49.77213131 0 90.49478418-40.72265287 90.49478417-90.49478417V285.76303955c0-49.77213131-40.72265287-90.49478418-90.49478417-90.49478417zM587.41232014 647.74217627h191.54729318c19.60720323 0 34.68966726-15.08246403 34.68966729-34.68966727V134.93839925c0-16.59071043-13.57421762-30.16492806-30.16492808-30.16492805H617.57724821c-30.16492806 0-60.32985613 27.14843525-60.32985612 60.32985611v452.4739209c0 16.59071043 13.57421762 30.16492806 30.16492805 30.16492806z" fill="currentColor"></path>
</svg>
        <span>22</span>
      </div>
      <div class="count-box--item">
        <svg class="icon icon-categories" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M900.3614811 257.09082106h-339.81629553l-67.96326003-101.9448889c-19.41807444-29.12711113-48.54518557-43.69066667-82.52681443-43.69066667H123.6385189c-53.39970333 0-97.09036999 43.69066667-97.09037113 97.09036999v582.54222222c0 53.39970333 43.69066667 97.09036999 97.09037113 97.09037002h776.7229622c53.39970333 0 97.09036999-43.69066667 97.09037113-97.09037002V354.18119104c0-53.39970333-43.69066667-97.09036999-97.09037113-97.09036998z m-97.09036999 242.72592554H220.72888889c-24.27259221 0-48.54518557-24.27259221-48.54518556-48.54518556s24.27259221-48.54518557 48.54518556-48.54518444h582.54222222c24.27259221 0 48.54518557 24.27259221 48.54518556 48.54518444s-24.27259221 48.54518557-48.54518556 48.54518556z" fill="currentColor"></path>
</svg>
        0
      </div>
      <div class="count-box--item">
        <svg class="icon icon-tags" viewBox="0 0 1098 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M283.42180005 272q0-28.38857157-20.09142843-48.48000001t-48.47999998-20.09142842-48.48000002 20.09142842-20.09142846 48.48000001 20.09142846 48.48 48.48000002 20.09142843 48.47999998-20.09142843 20.09142843-48.48zM855.0332285 580.57142843q0 28.38857157-19.81714313 48.2057147l-263.03999997 263.58857157q-20.9142853 19.81714313-48.75428534 19.81714312-28.38857157 0-48.20571468-19.81714312l-383.04-383.58857157q-20.36571468-19.81714313-34.55999999-54.10285688t-14.19428534-62.6742853l0-222.85714313q0-27.84000002 20.36571469-48.20571469t48.2057147-20.36571466l222.85714313 0q28.38857157 0 62.6742853 14.19428529t54.65142842 34.55999999l383.04000001 382.49142843q19.81714313 20.9142853 19.81714314 48.75428532zM1060.74751475 580.57142843q0 28.38857157-19.81714313 48.2057147l-263.04 263.58857157q-20.9142853 19.81714313-48.75428531 19.81714312-19.26857155 0-31.61142843-7.47428531t-28.38857159-24.13714314l251.79428534-251.7942853q19.81714313-19.81714313 19.81714308-48.20571469 0-27.84000002-19.81714308-48.75428531l-383.04000001-382.49142845q-20.36571468-20.36571468-54.65142842-34.55999999t-62.67428532-14.19428534l120 0q28.38857157 0 62.67428532 14.19428534t54.65142842 34.55999999l383.03999998 382.49142845q19.81714313 20.9142853 19.81714314 48.75428531z" fill="currentColor"></path>
</svg>
        8
      </div>
    </div>
  </div>
</section>

      

      
<section class="widet-notice widget-item layout-margin content-padding--primary soft-size--large soft-style--box">
  <div class="widget-title">
    <svg class="icon icon-notice" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M512 945.02305225v28.15620663a24.27259221 24.27259221 0 0 1-24.27259221 24.27259335H394.0352a48.54518557 48.54518557 0 0 1-41.74885888-23.78714112l-110.68302222-184.47170332a132.04290333 132.04290333 0 0 1-17.47626667-48.54518557h118.4502511a200.97706667 200.97706667 0 0 1 76.21594113 14.56355556l20.38897777 133.49925888a48.54518557 48.54518557 0 0 0 36.40888888 27.67075555l16.01991111 2.91271112a24.27259221 24.27259221 0 0 1 20.38897778 25.72894889zM997.45185223 463.45481443a194.18074112 194.18074112 0 0 1-38.8361489 116.50844445 24.75804445 24.75804445 0 0 1-36.4088889 0l-34.95253333-34.95253333a24.27259221 24.27259221 0 0 1-2.91271111-30.58346667 97.09036999 97.09036999 0 0 0 0-106.79940665 24.27259221 24.27259221 0 0 1 2.91271111-30.58346666l34.95253333-34.95253334a24.75804445 24.75804445 0 0 1 18.93262223-7.28177777 26.2144 26.2144 0 0 1 17.47626667 9.70903665A194.18074112 194.18074112 0 0 1 997.45185223 463.45481443z m-194.18074112-388.36148111v776.72296335a48.54518557 48.54518557 0 0 1-48.54518556 48.54518443h-28.64165888a48.54518557 48.54518557 0 0 1-33.98163001-14.07810332l-145.63555556-143.20829668A291.27111111 291.27111111 0 0 0 342.57730333 657.63555556H172.18370333a145.63555556 145.63555556 0 0 1-145.63555556-145.63555556v-97.09036999a145.63555556 145.63555556 0 0 1 145.63555556-145.63555556h170.3936a291.27111111 291.27111111 0 0 0 206.31703779-85.43952668l145.63555555-143.20829554a48.54518557 48.54518557 0 0 1 33.98162888-14.07810446H754.72592555a48.54518557 48.54518557 0 0 1 48.54518556 48.54518555z" fill="currentColor"></path>
</svg>
    <span>NOTICE</span>
  </div>
  <div class="widget-body">
    <p>flex-block主题部分重构，详情查看https://github.com/miiiku/flex-block</p>
  </div>
</section>


      <section class="widget-categorys widget-item layout-margin content-padding--primary soft-size--large soft-style--box">
  <div class="widget-title">
    <svg class="icon icon-categories" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M900.3614811 257.09082106h-339.81629553l-67.96326003-101.9448889c-19.41807444-29.12711113-48.54518557-43.69066667-82.52681443-43.69066667H123.6385189c-53.39970333 0-97.09036999 43.69066667-97.09037113 97.09036999v582.54222222c0 53.39970333 43.69066667 97.09036999 97.09037113 97.09037002h776.7229622c53.39970333 0 97.09036999-43.69066667 97.09037113-97.09037002V354.18119104c0-53.39970333-43.69066667-97.09036999-97.09037113-97.09036998z m-97.09036999 242.72592554H220.72888889c-24.27259221 0-48.54518557-24.27259221-48.54518556-48.54518556s24.27259221-48.54518557 48.54518556-48.54518444h582.54222222c24.27259221 0 48.54518557 24.27259221 48.54518556 48.54518444s-24.27259221 48.54518557-48.54518556 48.54518556z" fill="currentColor"></path>
</svg>
    <span>CATEGORYS</span>
  </div>
  <div class="widget-body">
    <ul class="categorys-list">
      
    </ul>
  </div>
</section>

      <section class="widget-tags widget-item  layout-margin content-padding--primary soft-size--large soft-style--box">
  <div class="widget-title">
    <svg class="icon icon-tags" viewBox="0 0 1098 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M283.42180005 272q0-28.38857157-20.09142843-48.48000001t-48.47999998-20.09142842-48.48000002 20.09142842-20.09142846 48.48000001 20.09142846 48.48 48.48000002 20.09142843 48.47999998-20.09142843 20.09142843-48.48zM855.0332285 580.57142843q0 28.38857157-19.81714313 48.2057147l-263.03999997 263.58857157q-20.9142853 19.81714313-48.75428534 19.81714312-28.38857157 0-48.20571468-19.81714312l-383.04-383.58857157q-20.36571468-19.81714313-34.55999999-54.10285688t-14.19428534-62.6742853l0-222.85714313q0-27.84000002 20.36571469-48.20571469t48.2057147-20.36571466l222.85714313 0q28.38857157 0 62.6742853 14.19428529t54.65142842 34.55999999l383.04000001 382.49142843q19.81714313 20.9142853 19.81714314 48.75428532zM1060.74751475 580.57142843q0 28.38857157-19.81714313 48.2057147l-263.04 263.58857157q-20.9142853 19.81714313-48.75428531 19.81714312-19.26857155 0-31.61142843-7.47428531t-28.38857159-24.13714314l251.79428534-251.7942853q19.81714313-19.81714313 19.81714308-48.20571469 0-27.84000002-19.81714308-48.75428531l-383.04000001-382.49142845q-20.36571468-20.36571468-54.65142842-34.55999999t-62.67428532-14.19428534l120 0q28.38857157 0 62.67428532 14.19428534t54.65142842 34.55999999l383.03999998 382.49142845q19.81714313 20.9142853 19.81714314 48.75428531z" fill="currentColor"></path>
</svg>
    <span>TAGS</span>
  </div>
  <div class="widget-body">
    <div class="tags-cloud">
      <a href="/blog/tags/Activiti/" style="font-size: 13.33px;" class="tags-cloud-3">Activiti</a> <a href="/blog/tags/Nginx/" style="font-size: 10px;" class="tags-cloud-0">Nginx</a> <a href="/blog/tags/PG%E6%95%B0%E6%8D%AE%E5%BA%93/" style="font-size: 13.33px;" class="tags-cloud-3">PG数据库</a> <a href="/blog/tags/goView/" style="font-size: 13.33px;" class="tags-cloud-3">goView</a> <a href="/blog/tags/java/" style="font-size: 20px;" class="tags-cloud-10">java</a> <a href="/blog/tags/vue/" style="font-size: 16.67px;" class="tags-cloud-7">vue</a> <a href="/blog/tags/%E5%AF%BC%E5%87%BAExcel/" style="font-size: 16.67px;" class="tags-cloud-7">导出Excel</a> <a href="/blog/tags/%E6%8A%A5%E9%94%99/" style="font-size: 10px;" class="tags-cloud-0">报错</a>
    </div>
  </div>
</section>
    </div>
  </article>
</div>

    <!-- footer container -->
<footer id="footer" class="footer">
  <div class="footer-container">
    
    <div class="social-icons">
      
        
      
        
      
        
      
        
          <a href="https://github.com/miiiku/" class="soft-size--primary soft-style--box" target="_blank" rel="noopener noreferrer">
            <svg class="icon icon-github" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M64.6 512c0 195.6 125.4 361.9 300.1 422.9 23.5 5.9 19.9-10.8 19.9-22.2v-77.6c-135.8 15.9-141.3-74-150.5-89-18.5-31.5-61.9-39.5-49-54.5 31-15.9 62.5 4 98.9 58 26.4 39.1 77.9 32.5 104.1 26 5.7-23.5 17.9-44.5 34.7-60.9-140.7-25.2-199.4-111.1-199.4-213.3 0-49.5 16.4-95.1 48.4-131.8-20.4-60.6 1.9-112.4 4.9-120.1 58.2-5.2 118.5 41.6 123.3 45.3 33.1-8.9 70.8-13.7 112.9-13.7 42.4 0 80.3 4.9 113.5 13.9 11.3-8.6 67.3-48.8 121.4-43.9 2.9 7.7 24.7 58.3 5.5 118.1 32.5 36.8 49 82.8 49 132.4 0 102.3-59 188.3-200.2 213.2 23.5 23.3 38.1 55.5 38.1 91.1v112.7c0.8 9 0 17.9 15.1 17.9C832.7 877 960.4 709.4 960.4 512.1c0-247.5-200.6-447.9-447.9-447.9C265 64.1 64.6 264.5 64.6 512z"></path>
</svg>
          </a>
        
      
        
          <a href="https://twitter.com/guanquanhong" class="soft-size--primary soft-style--box" target="_blank" rel="noopener noreferrer">
            <svg class="icon icon-twitter" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <path d="M962.285714 233.142857q-38.285714 56-92.571429 95.428571 0.571429 8 0.571429 24 0 74.285714-21.714286 148.285714t-66 142-105.428571 120.285714-147.428571 83.428571-184.571429 31.142857q-154.857143 0-283.428571-82.857143 20 2.285714 44.571429 2.285714 128.571429 0 229.142857-78.857143-60-1.142857-107.428571-36.857143t-65.142857-91.142857q18.857143 2.857143 34.857143 2.857143 24.571429 0 48.571429-6.285714-64-13.142857-106-63.714286t-42-117.428571l0-2.285714q38.857143 21.714286 83.428571 23.428571-37.714286-25.142857-60-65.714286t-22.285714-88q0-50.285714 25.142857-93.142857 69.142857 85.142857 168.285714 136.285714t212.285714 56.857143q-4.571429-21.714286-4.571429-42.285714 0-76.571429 54-130.571429t130.571429-54q80 0 134.857143 58.285714 62.285714-12 117.142857-44.571429-21.142857 65.714286-81.142857 101.714286 53.142857-5.714286 106.285714-28.571429z"></path>
</svg>
          </a>
        
      
    </div>
     
    <p>&copy; 2024 <a href="/" target="_blank">QAQ</a></p>

    

    <p>Powered by <a href="https://hexo.io" target="_blank" rel="noopener noreferrer">Hexo</a> Theme - <a href="https://github.com/miiiku/flex-block" target="_blank" rel="noopener noreferrer author">flex-block</a></p>

    <p>
      <a href="javascript:;" id="theme-light">🌞 浅色</a>
      <a href="javascript:;" id="theme-dark">🌛 深色</a>
      <a href="javascript:;" id="theme-auto">🤖️ 自动</a>
    </p>
  </div>
</footer>
  </div>

  <div class="back-to-top-fixed soft-size--round soft-style--box">
    <svg class="icon icon-back-to-top" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
      <path d="M725.333333 426.666667c-12.8 0-21.333333-4.266667-29.866667-12.8l-213.333333-213.333333c-17.066667-17.066667-17.066667-42.666667 0-59.733333s42.666667-17.066667 59.733333 0l213.333333 213.333333c17.066667 17.066667 17.066667 42.666667 0 59.733333C746.666667 422.4 738.133333 426.666667 725.333333 426.666667z"></path>
      <path d="M298.666667 426.666667c-12.8 0-21.333333-4.266667-29.866667-12.8-17.066667-17.066667-17.066667-42.666667 0-59.733333l213.333333-213.333333c17.066667-17.066667 42.666667-17.066667 59.733333 0s17.066667 42.666667 0 59.733333l-213.333333 213.333333C320 422.4 311.466667 426.666667 298.666667 426.666667z"></path>
      <path d="M512 896c-25.6 0-42.666667-17.066667-42.666667-42.666667L469.333333 170.666667c0-25.6 17.066667-42.666667 42.666667-42.666667s42.666667 17.066667 42.666667 42.666667l0 682.666667C554.666667 878.933333 537.6 896 512 896z"></path>
    </svg>
  </div>

  
  <!-- aplayer -->


<!-- dplayer -->


<!-- copy button  -->
<script src="https://cdn.jsdelivr.net/npm/clipboard@2.0.11/dist/clipboard.min.js"></script>

<!-- https://clipboardjs.com/ -->


<script type="text/javascript">
	(function () {
		function getCodeType (elem) {
			const classs = Array.from(elem.classList.values());
			if (classs && classs.length > 1) {
				return classs[1];
			}
			return "plain";
		}

		window.addEventListener("DOMContentLoaded", () => {
			const copyBtnClass = "copy-btn";
			//  instantiate clipboardjs 
			const clipboard = new ClipboardJS('.' + copyBtnClass);

			clipboard.on('success', function (e) {
				console.info('Action:', e.action);
				console.info('Text:', e.text);
				console.info('Trigger:', e.trigger);
				if (e.trigger) {
					e.trigger.classList.add("copied");
					setTimeout(() => {
						e.trigger.classList.remove("copied");
					}, 3000);
				}
				e.clearSelection();
			});

			clipboard.on('error', function (e) {
				console.error('Action:', e.action);
				console.error('Trigger:', e.trigger);
			});

			document.querySelectorAll('figure.highlight').forEach((elem) => {
				const codeContent = elem.querySelector("td.code");
				const copyButton = document.createElement('button');
				copyButton.setAttribute("class", copyBtnClass);
				copyButton.setAttribute("title", "Copy Code");
				copyButton.setAttribute("data-clipboard-text", codeContent.innerText);
				elem.insertBefore(copyButton, elem.children[0]);
			});
		})
	})();
</script>








  


  


  




<script src="/blog/js/script.js"></script>


  
  <!-- 尾部用户自定义相关内容 -->
</body>
</html>
